package com.rc.saas.mini.mapper.member;

import com.rc.saas.mini.common.base.BaseMapper;
import com.rc.saas.mini.model.member.MemberAccountRecord;
import com.rc.saas.mini.model.member.MemberAccountRecordExample;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

public interface MemberAccountRecordMapper extends BaseMapper<Long, MemberAccountRecord, MemberAccountRecordExample> {
    List<String> listMemberAccountDateRecord(Long memberId);

    List<MemberAccountRecord> listMemberAccountRecord(@Param(value = "memberId") Long memberId, @Param(value = "yearMonth") String yearMonth);

    List<MemberAccountRecord> listByTypeAndMonth(@Param(value = "memberId") Long memberId, @Param(value = "accountType") String accountType, @Param(value = "yearMonth") String yearMonth,@Param(value = "recordType")String recordType);

    List<MemberAccountRecord> listByYesterday(@Param(value = "memberId") Long memberId);

    List<MemberAccountRecord> listByGetMonth(@Param(value = "memberId") Long memberId);

    List<MemberAccountRecord> listPayByTime(@Param(value = "memberId") Long memberId, @Param(value = "beginTime") Date beginTime, @Param(value = "endTime") Date endTime);

    void insertByReturnId(MemberAccountRecord memberAccountRecord);
}